package q1.project.core.jpa.annotation;

import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.hibernate.annotations.IdGeneratorType;
import q1.project.core.config.IdGeneratorConfig;

/**
 * Binds {@link IdGeneratorConfig} to an entity field via Hibernate's {@link IdGeneratorType}
 * mechanism, enabling custom UUID generation without relying on deprecated annotations.
 * @author 孙
 */
@IdGeneratorType(IdGeneratorConfig.class)
@Retention(RetentionPolicy.RUNTIME)
@Target({FIELD, METHOD})
public @interface JpaUuidId {}

